/* Custom Icon Styles - Keep these for JetBrains product icons */


/* JetBrains Product Icons */
.icon {
    background-image: url('../images/icons.svg?t=4567');
    background-size: 64px;
    background-position-x: 0;
    background-repeat: no-repeat;
}

.icon-ii {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/intellij-idea/intellij-idea.svg');
}

.icon-ps {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/phpstorm/phpstorm.svg');
}

.icon-ac {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/appcode/appcode.svg');
}

.icon-db {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/datagrip/datagrip.svg');
}

.icon-rm {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/rubymine/rubymine.svg');
}

.icon-ws {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/webstorm/webstorm.svg');
}

.icon-rd {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/rider/rider.svg');
}

.icon-cl {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/clion/clion.svg');
}

.icon-pc {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/pycharm/pycharm.svg');
}

.icon-go {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/goland/goland.svg');
}

.icon-ds {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/dataspell/dataspell.svg');
}

.icon-dc {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/dotcover/dotcover.svg');
}

.icon-dpn {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/dottrace/dottrace.svg');
}

.icon-dm {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/dotmemory/dotmemory.svg');
}

.icon-rr {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/rustrover/rustrover.svg');
}

.icon-qa {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/aqua/aqua.svg');
}

.icon-al {
    background-image: url('https://resources.jetbrains.com/storage/logos/web/toolbox/toolbox.svg');
}

/* Custom animations and transitions for enhanced UX */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes slideIn {
    from { transform: translateX(-100%); }
    to { transform: translateX(0); }
}

.animate-fade-in {
    animation: fadeIn 0.5s ease-out;
}

.animate-slide-in {
    animation: slideIn 0.3s ease-out;
}

/* Responsive Grid Layout */
.grid-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 1.5rem;
    width: 100%;
    padding: 0;
}

/* Responsive breakpoints for different card sizes */
@media (max-width: 640px) {
    .grid-container {
        grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
        gap: 1rem;
    }
}

@media (min-width: 641px) and (max-width: 1024px) {
    .grid-container {
        grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
        gap: 1.25rem;
    }
}

@media (min-width: 1025px) {
    .grid-container {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
        gap: 1.5rem;
    }
}

/* Custom scrollbar for better aesthetics */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8;
}

@media (prefers-color-scheme: dark) {
    ::-webkit-scrollbar-track {
        background: #2d2d2d;
    }

    ::-webkit-scrollbar-thumb {
        background: #555;
    }

    ::-webkit-scrollbar-thumb:hover {
        background: #777;
    }
}